HAL QSPI callback functions migration ¶
This section provides information about the HAL QSPI callback functions migration.
Callback functions in non-blocking modes ¶
HAL QSPI error callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_ErrorCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_ErrorCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI abort completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_AbortCpltCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_AbortCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI FIFO threshold callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_FifoThresholdCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_FifoThresholdCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI indirect mode callback functions ¶
HAL QSPI command completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_CmdCpltCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_CmdCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI RX transfer completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_RxCpltCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_RxCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI TX transfer completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_TxCpltCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_TxCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI RX half completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_RxHalfCpltCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_RxHalfCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI TX half completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_TxHalfCpltCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_TxHalfCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI status flag polling mode function ¶
HAL QSPI status match callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_StatusMatchCallback(QSPI_HandleTypeDef *hqspi);
|
HAL_XSPI_StatusMatchCallback(hal_xspi_handle_t *hxspi);
|
HAL QSPI memory-mapped mode function ¶
HAL QSPI timeout callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_QSPI_TimeOutCallback(QSPI_HandleTypeDef *hqspi);
|
Removed from HAL2.
The
Note Error code can be retrieved from HAL_XSPI_GetLastErrorCodes(). |
HAL QSPI register/unregister callback functions ¶
HAL QSPI register callback ¶
In HAL1, the function
HAL_QSPI_RegisterCallback()
is used to register various QSPI callbacks through a single function with a specific callback ID, whereas, in HAL2, distinct functions are available to register each specific XSPI callback.
|
Function |
HAL 1 |
HAL 2 |
|---|---|---|
|
Tx Complete Callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_TX_CPLT_CB_ID,
USER_QSPI_TxCpltCallback)
|
HAL_XSPI_RegisterTxCpltCallback(&hxspi,
USER_QSPI_TxCpltCallback);
|
|
Rx Complete Callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_RX_CPLT_CB_ID,
USER_QSPI_RxCpltCallback)
|
HAL_XSPI_RegisterRxCpltCallback(&hxspi,
USER_QSPI_RxCpltCallback);
|
|
Tx Half Complete Callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_TX_HALF_CPLT_CB_ID,
USER_QSPI_TxHalfCpltCallback);
|
HAL_XSPI_RegisterRxCpltCallback(&hxspi,
USER_QSPI_TxHalfCpltCallback);
|
|
Rx Half Complete Callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_RX_HALF_CPLT_CB_ID,
USER_QSPI_RxHalfCpltCallback);
|
HAL_XSPI_RegisterRxCpltCallback(&hxspi,
USER_QSPI_RxHalfCpltCallback);
|
|
QSPI error callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_ERROR_CB_ID,
USER_QSPI_ErrorCallback);
|
HAL_XSPI_RegisterErrorCallback(&hxspi,
USER_QSPI_ErrorCallback);
|
|
QSPI abort callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_ABORT_CB_ID,
USER_QSPI_AbortCpltCallback);
|
HAL_XSPI_RegisterAbortCpltCallback(&hxspi,
USER_QSPI_AbortCpltCallback);
|
|
QSPI FIFO Threshold callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_FIFO_THRESHOLD_CB_ID,
USER_QSPI_FIFO_THRESHOLD_CpltCallback);
|
HAL_XSPI_RegisterFifoThresholdCallback(&hxspi,
USER_QSPI_FIFO_THRESHOLD_CpltCallback);
|
|
QSPI Command complete callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_CMD_CPLT_CB_ID,
USER_QSPI_Cmd_CpltCallback);
|
HAL_XSPI_RegisterCmdCpltCallback(&hxspi,
USER_QSPI_Cmd_CpltCallback);
|
|
QSPI Status match callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_STATUS_MATCH_CB_ID,
USER_QSPI_Status_Match_CpltCallback);
|
HAL_XSPI_RegisterStatusMatchCallback(&hxspi,
USER_QSPI_Status_Match_CpltCallback);
|
|
QSPI Timeout callback |
HAL_QSPI_RegisterCallback(&hqspi,
HAL_QSPI_TIMEOUT_CB_ID,
USER_QSPI_timeout_CpltCallback);
|
HAL_XSPI_RegisterErrorCallback(&hxspi,
USER_QSPI_timeout_CpltCallback);
|
Related concept: Individual callback registration APIs replace global register and unregister functions
HAL QSPI unregister callback ¶
In HAL2, the unregister callback API has been removed. Instead, callbacks can be managed by re-registering the default HAL QSPI weak callbacks as needed.
|
Function |
HAL 1 |
HAL 2 |
|---|---|---|
|
Tx Complete Callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_TX_CPLT_CB_ID);
|
HAL_XSPI_RegisterTxCpltCallback(&hxspi,
HAL_XSPI_TxCpltCallback);
|
|
Rx Complete Callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_RX_CPLT_CB_ID);
|
HAL_XSPI_RegisterRxCpltCallback(&hxspi,
HAL_XSPI_RxCpltCallback);
|
|
Tx Half Complete Callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_TX_HALF_CPLT_CB_ID;);
|
HAL_XSPI_RegisterRxCpltCallback(&hxspi,
HAL_XSPI_TxHalfCpltCallback);
|
|
Rx Half Complete Callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_RX_HALF_CPLT_CB_ID);
|
HAL_XSPI_RegisterRxCpltCallback(&hxspi,
HAL_XSPI_RxHalfCpltCallback);
|
|
QSPI error callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_ERROR_CB_ID);
|
HAL_XSPI_RegisterErrorCallback(&hxspi,
HAL_XSPI_ErrorCallback);
|
|
QSPI abort callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_ABORT_CB_ID);
|
HAL_XSPI_RegisterAbortCpltCallback(&hxspi,
HAL_XSPI_AbortCpltCallback);
|
|
QSPI FIFO Threshold callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_FIFO_THRESHOLD_CB_ID);
|
HAL_XSPI_RegisterFifoThresholdCallback(&hxspi,
HAL_XSPI_FifoThresholdCallback);
|
|
QSPI Command complete callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_CMD_CPLT_CB_ID);
|
HAL_XSPI_RegisterCmdCpltCallback(&hxspi,
HAL_XSPI_CmdCpltCallback);
|
|
QSPI Status match callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_STATUS_MATCH_CB_ID);
|
HAL_XSPI_RegisterStatusMatchCallback(&hxspi,
HAL_XSPI_StatusMatchCallback);
|
|
QSPI Timeout callback |
HAL_QSPI_UnRegisterCallback(&hqspi,
HAL_QSPI_ERROR_CB_ID);
|
HAL_XSPI_RegisterErrorCallback(&hxspi,
HAL_XSPI_ErrorCallback);
|
Related concept: Individual callback registration APIs replace global register and unregister functions